Classic Component Set for Delphi Classic Software Please refer to the file CSCCS.WRI for installation instructions and further information. =========================================================================== Version 1.10 Changes: =========================================================================== TcsStringTable (used by TcsGrid) -------------------------------- Fixed problem with OnChange event not firing when columns where deleted. TcsSculptButton --------------- New component. TcsFormPanel ------------ Changed Resize method to prevent problems occurring if called when the component is being destroyed. Resize method is now used by SetForm method, duplicated code removed. Fixed problem (which only occurred under Delphi 2) with the previous form not being hidden correctly within SetFormName. TcsNotebook ----------- Corrected problem which occurred when there were invisible pages and you changed the BitmapAlignment, SidewaysText, TabFont, TextAlignment or UnselectedColor properties. Clicking on a tab at design-time can now be used to change pages. A "hand" cursor now appears when positioned over the tabs at design-time. Added new public method TabAtPos(X, Y: Integer) which returns the index of the tab at the specified location or -1 if no tab found. Changed TabRect from private method to protected method to allow use by descendant classes. Corrected the Next/Previous Page commands on the design-time right-click menu so that you are now able to skip over invisible pages to get to the next/previous visible page. Corrected problem which occurred when the active page was made invisible at design-time. Added Move method to TcsPageAccess so that pages can be moved at run-time, e.g. by using csNotebook1.Pages.Move(0, 2); { make 0th page the 2nd page }. TcsGrid ------- Changed so that when new rows/columns are added or inserted when the goRowSizing/goColSizing options are in effect the next-to-last row/column will now retain its previous size. =========================================================================== Version 1.05 Changes: =========================================================================== TcsHiResTimer ------------- 16-bit version changed so that the required DLL (CSTIME16.DLL) is imported dynamically; this allows the component library to be rebuilt or applications containing the component to still be run when the DLL is not found. Now compatible with Delphi 2 (32-bit). Note that no DLL is required when using the component with Delphi 2. TcsNotebook ----------- Fixed several instances where objects in internal lists were not being freed correctly. TcsFormPanel ------------ Changed so that a case-insensitive comparison is used when comparing FormName against the list of auto-created forms. =========================================================================== Version 1.04 Changes: =========================================================================== 32-bit compatibility -------------------- All components except TcsAutoDefaults and TcsHiResTimer are now compatible with the 32-bit version of Delphi 2. Refer to CSCCS.WRI for a list of the files which differ between the 16 and 32-bit versions. TcsNotebook ----------- 1. Dynamic creation of a TcsNotebook in a form's OnFormCreate event handler is now possible. 2. Pages now have a PageVisible (Boolean) property. Pages can be made invisible, for example, to completely hide a certain tab if the current user does not have security clearance to access that page. You can change the visibility of tabs at design-time from within the Pages property editor. 3. Page changing (via mouse-click, accelerator key or programmatically) will now only occur if the OnExit event handlers for the active control doesn't prevent the focus to be changed to the notebook, e.g. no page change (or tab click event) will occur when a control contains invalid data and its OnExit handler is resetting focus back to itself so that its value can be corrected. 4. A new Bitmap property has been added to TcsNotebook. Bitmaps must now be assigned to tabs at design-time using this new property instead of within the Pages property editor (using the standard Picture Editor). This new property allows access to the bitmap for the currently selected page so that any 3rd party Picture Editor you have installed will be used to select the bitmap. 5. Bitmaps are now displayed 'transparently', i.e. their background colour is replaced with the appropriate background colour of the tab. Note that the background (transparent) colour of a bitmap is considered to be the colour of the first pixel on the last row of the bitmap. 6. Bitmaps can now contain multiple glyphs. New NumGlyphs properties have been added to TcsNotebook and TcsPage. The TcsNotebook.NumGlyphs property allows access to the NumGlyphs property for the currently selected page. NumGlyphs can be 1..3. The first glyph is used when the tab is Selected, the second when the tab is Disabled and the third when the tab is Unselected (but not disabled). If only one glyph is present then it is used for all three states (and modified as necessary). Each page has its own NumGlyph property. 7. A new TextAlignment of taInvisible has been added, this allows caption-less tabs, e.g. when you only want the glyph to be displayed. 8. A new BitmapAlignment of baInvisible has been added. This allows you to (temporarily) hide the glyphs by changing this one property without having to clear and the later re-assign the bitmap for each page. 9. TcsNotebook now respects any focus changes made in the OnPageChange event handler, e.g. when you want to set focus to a specific control on the newly selected page. 10. New TcsNotebook methods TabNumGlyphs[Index: Integer]: Integer and TabPageVisible[Index: Integer]: Boolean added to allow programmatic access to the page's new NumGlyphs and PageVisible properties respectively. 11. The margin between the sides of the tab and the area used to display the tab's text and glyph has been increased by 1. 12. Incorrect typecast of FRowIdentities.Items[] corrected (one instance only; not causing any known problems). =========================================================================== Version 1.03 Changes: =========================================================================== TcsNotebook ----------- Various changes made to TcsNotebook and supporting files so that specific notebook pages can be enabled/disabled. Added PageEnabled property to TcsPage. Changed TcsNotebook.HasLoaded from public property to private property. Changed TcsNotebook.InvalidateTab from public method to private method. Changed TcsNotebook.Reconfigure from public method to private method. Changed TcsNotebook.UpdateTabCaption from public method to private method. Fixed the error which occurred if bitmaps were changed while the notebook was being loaded (sequence of events that caused this not determined). Fixed the error which occurred if certain controls were used on the TcsNotebook's pages and the current page was also being changed in the form's OnCreate event handler. Fixed the error which occurred if the Show method of a control on a TcsNotebook page was used before the notebook had been initialised/shown, e.g. in the form's OnCreate event method. =========================================================================== Version 1.02 Changes: =========================================================================== TcsNotebook ----------- Removed BitmapName property from TcsPage. Changed Bitmap property in TcsPage so that it is now read-write and published. Bitmaps are now assigned at design-time using the Picture Editor dialog box. NOTE: Because the BitmapName property is no longer valid you will (if using bitmaps on tabs) need to: a) Reload existing forms which contain TcsNotebook components. b) Choose Ignore or Ignore All when you get the "Error Reading Form" dialog box saying the TcsPage.BitmapName property does not exist. c) Re-assign the required bitmap to each tab by selecting the appropriate bitmap file. d) Change or remove any source code references to the BitmapName property. If you need to determine which bitmaps you previously assigned, you can open the form file in ASCII mode in the source code editor (before reloading it) to check the old BitmapName property values. Added UnselectedTabColor property. Added UseUnselectedTabColor property. Corrected behaviour of SidewaysText property when the component is first loaded. Previously, if SidewaysText had been specified as False and TabOrientation was toLeft or toRight, SidewaysText would be initialised to True when the form was reloaded. SidewaysText property is no longer reset to True when changing TabOrientation from toLeft to toRight or vice versa. Corrected behaviour of Enabled property for each page. Previously, each page was always Enabled (even if not the current page), which may have caused problems if relying on only the current page being Enabled. =========================================================================== Version 1.01 Changes: =========================================================================== TcsNotebook ----------- Corrected 'List index out of bounds' error which occurred if the last tab was the current tab and it was deleted. ===========================================================================